<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML
><HEAD
><TITLE
>reindexdb</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REV="MADE"
HREF="mailto:pgsql-docs@postgresql.org"><LINK
REL="HOME"
TITLE="PostgreSQL 9.1.2 Documentation"
HREF="index.html"><LINK
REL="UP"
TITLE="PostgreSQL Client Applications"
HREF="reference-client.html"><LINK
REL="PREVIOUS"
TITLE="psql"
HREF="app-psql.html"><LINK
REL="NEXT"
TITLE="vacuumdb"
HREF="app-vacuumdb.html"><LINK
REL="STYLESHEET"
TYPE="text/css"
HREF="stylesheet.css"><META
HTTP-EQUIV="Content-Type"
CONTENT="text/html; charset=ISO-8859-1"><META
NAME="creation"
CONTENT="2011-12-01T22:07:59"></HEAD
><BODY
CLASS="REFENTRY"
><DIV
CLASS="NAVHEADER"
><TABLE
SUMMARY="Header navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="5"
ALIGN="center"
VALIGN="bottom"
><A
HREF="index.html"
>PostgreSQL 9.1.2 Documentation</A
></TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="top"
><A
TITLE="psql"
HREF="app-psql.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="top"
><A
HREF="reference-client.html"
ACCESSKEY="U"
>Up</A
></TD
><TD
WIDTH="60%"
ALIGN="center"
VALIGN="bottom"
></TD
><TD
WIDTH="20%"
ALIGN="right"
VALIGN="top"
><A
TITLE="vacuumdb"
HREF="app-vacuumdb.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><H1
><A
NAME="APP-REINDEXDB"
></A
><SPAN
CLASS="APPLICATION"
>reindexdb</SPAN
></H1
><DIV
CLASS="REFNAMEDIV"
><A
NAME="AEN82157"
></A
><H2
>Name</H2
>reindexdb&nbsp;--&nbsp;reindex a <SPAN
CLASS="PRODUCTNAME"
>PostgreSQL</SPAN
> database</DIV
><DIV
CLASS="REFSYNOPSISDIV"
><A
NAME="AEN82163"
></A
><H2
>Synopsis</H2
><P
><TT
CLASS="COMMAND"
>reindexdb</TT
> [<TT
CLASS="REPLACEABLE"
><I
>connection-option</I
></TT
>...] [--table | -t <TT
CLASS="REPLACEABLE"
><I
>table</I
></TT
> ] [--index | -i <TT
CLASS="REPLACEABLE"
><I
>index</I
></TT
> ] [<TT
CLASS="REPLACEABLE"
><I
>dbname</I
></TT
>]</P
><P
><TT
CLASS="COMMAND"
>reindexdb</TT
> [<TT
CLASS="REPLACEABLE"
><I
>connection-option</I
></TT
>...] [--all | -a]</P
><P
><TT
CLASS="COMMAND"
>reindexdb</TT
> [<TT
CLASS="REPLACEABLE"
><I
>connection-option</I
></TT
>...] [--system | -s] [<TT
CLASS="REPLACEABLE"
><I
>dbname</I
></TT
>]</P
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN82186"
></A
><H2
>Description</H2
><P
>   <SPAN
CLASS="APPLICATION"
>reindexdb</SPAN
> is a utility for rebuilding indexes
   in a <SPAN
CLASS="PRODUCTNAME"
>PostgreSQL</SPAN
> database.
  </P
><P
>   <SPAN
CLASS="APPLICATION"
>reindexdb</SPAN
> is a wrapper around the SQL
   command <A
HREF="sql-reindex.html"
>REINDEX</A
>.
   There is no effective difference between reindexing databases via
   this utility and via other methods for accessing the server.
  </P
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN82194"
></A
><H2
>Options</H2
><P
>    <SPAN
CLASS="APPLICATION"
>reindexdb</SPAN
> accepts the following command-line arguments:

    <P
></P
></P><DIV
CLASS="VARIABLELIST"
><DL
><DT
><TT
CLASS="OPTION"
>-a</TT
><BR><TT
CLASS="OPTION"
>--all</TT
></DT
><DD
><P
>        Reindex all databases.
       </P
></DD
><DT
><TT
CLASS="OPTION"
>[<SPAN
CLASS="OPTIONAL"
>-d</SPAN
>] <TT
CLASS="REPLACEABLE"
><I
>dbname</I
></TT
></TT
><BR><TT
CLASS="OPTION"
>[<SPAN
CLASS="OPTIONAL"
>--dbname=</SPAN
>]<TT
CLASS="REPLACEABLE"
><I
>dbname</I
></TT
></TT
></DT
><DD
><P
>        Specifies the name of the database to be reindexed.
        If this is not specified and <TT
CLASS="OPTION"
>-a</TT
> (or
        <TT
CLASS="OPTION"
>--all</TT
>) is not used, the database name is read
        from the environment variable <TT
CLASS="ENVAR"
>PGDATABASE</TT
>.  If
        that is not set, the user name specified for the connection is
        used.
       </P
></DD
><DT
><TT
CLASS="OPTION"
>-e</TT
><BR><TT
CLASS="OPTION"
>--echo</TT
></DT
><DD
><P
>        Echo the commands that <SPAN
CLASS="APPLICATION"
>reindexdb</SPAN
> generates
        and sends to the server.
       </P
></DD
><DT
><TT
CLASS="OPTION"
>-i <TT
CLASS="REPLACEABLE"
><I
>index</I
></TT
></TT
><BR><TT
CLASS="OPTION"
>--index=<TT
CLASS="REPLACEABLE"
><I
>index</I
></TT
></TT
></DT
><DD
><P
>        Recreate <TT
CLASS="REPLACEABLE"
><I
>index</I
></TT
> only.
       </P
></DD
><DT
><TT
CLASS="OPTION"
>-q</TT
><BR><TT
CLASS="OPTION"
>--quiet</TT
></DT
><DD
><P
>        Do not display progress messages.
       </P
></DD
><DT
><TT
CLASS="OPTION"
>-s</TT
><BR><TT
CLASS="OPTION"
>--system</TT
></DT
><DD
><P
>        Reindex database's system catalogs.
       </P
></DD
><DT
><TT
CLASS="OPTION"
>-t <TT
CLASS="REPLACEABLE"
><I
>table</I
></TT
></TT
><BR><TT
CLASS="OPTION"
>--table=<TT
CLASS="REPLACEABLE"
><I
>table</I
></TT
></TT
></DT
><DD
><P
>        Reindex <TT
CLASS="REPLACEABLE"
><I
>table</I
></TT
> only.
       </P
></DD
><DT
><TT
CLASS="OPTION"
>-V</TT
><BR><TT
CLASS="OPTION"
>--version</TT
></DT
><DD
><P
>       Print the <SPAN
CLASS="APPLICATION"
>reindexdb</SPAN
> version and exit.
       </P
></DD
><DT
><TT
CLASS="OPTION"
>-?</TT
><BR><TT
CLASS="OPTION"
>--help</TT
></DT
><DD
><P
>      Show help about <SPAN
CLASS="APPLICATION"
>reindexdb</SPAN
> command line
      arguments, and exit.
      </P
></DD
></DL
></DIV
><P>

   </P
><P
>    <SPAN
CLASS="APPLICATION"
>reindexdb</SPAN
> also accepts
    the following command-line arguments for connection parameters:

    <P
></P
></P><DIV
CLASS="VARIABLELIST"
><DL
><DT
><TT
CLASS="OPTION"
>-h <TT
CLASS="REPLACEABLE"
><I
>host</I
></TT
></TT
><BR><TT
CLASS="OPTION"
>--host=<TT
CLASS="REPLACEABLE"
><I
>host</I
></TT
></TT
></DT
><DD
><P
>        Specifies the host name of the machine on which the server is
        running.  If the value begins with a slash, it is used as the
        directory for the Unix domain socket.
       </P
></DD
><DT
><TT
CLASS="OPTION"
>-p <TT
CLASS="REPLACEABLE"
><I
>port</I
></TT
></TT
><BR><TT
CLASS="OPTION"
>--port=<TT
CLASS="REPLACEABLE"
><I
>port</I
></TT
></TT
></DT
><DD
><P
>        Specifies the TCP port or local Unix domain socket file
        extension on which the server
        is listening for connections.
       </P
></DD
><DT
><TT
CLASS="OPTION"
>-U <TT
CLASS="REPLACEABLE"
><I
>username</I
></TT
></TT
><BR><TT
CLASS="OPTION"
>--username=<TT
CLASS="REPLACEABLE"
><I
>username</I
></TT
></TT
></DT
><DD
><P
>        User name to connect as.
       </P
></DD
><DT
><TT
CLASS="OPTION"
>-w</TT
><BR><TT
CLASS="OPTION"
>--no-password</TT
></DT
><DD
><P
>        Never issue a password prompt.  If the server requires
        password authentication and a password is not available by
        other means such as a <TT
CLASS="FILENAME"
>.pgpass</TT
> file, the
        connection attempt will fail.  This option can be useful in
        batch jobs and scripts where no user is present to enter a
        password.
       </P
></DD
><DT
><TT
CLASS="OPTION"
>-W</TT
><BR><TT
CLASS="OPTION"
>--password</TT
></DT
><DD
><P
>        Force <SPAN
CLASS="APPLICATION"
>reindexdb</SPAN
> to prompt for a
        password before connecting to a database.
       </P
><P
>        This option is never essential, since
        <SPAN
CLASS="APPLICATION"
>reindexdb</SPAN
> will automatically prompt
        for a password if the server demands password authentication.
        However, <SPAN
CLASS="APPLICATION"
>reindexdb</SPAN
> will waste a
        connection attempt finding out that the server wants a password.
        In some cases it is worth typing <TT
CLASS="OPTION"
>-W</TT
> to avoid the extra
        connection attempt.
       </P
></DD
></DL
></DIV
><P>
   </P
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN82328"
></A
><H2
>Environment</H2
><P
></P
><DIV
CLASS="VARIABLELIST"
><DL
><DT
><TT
CLASS="ENVAR"
>PGDATABASE</TT
><BR><TT
CLASS="ENVAR"
>PGHOST</TT
><BR><TT
CLASS="ENVAR"
>PGPORT</TT
><BR><TT
CLASS="ENVAR"
>PGUSER</TT
></DT
><DD
><P
>      Default connection parameters
     </P
></DD
></DL
></DIV
><P
>   This utility, like most other <SPAN
CLASS="PRODUCTNAME"
>PostgreSQL</SPAN
> utilities,
   also uses the environment variables supported by <SPAN
CLASS="APPLICATION"
>libpq</SPAN
>
   (see <A
HREF="libpq-envars.html"
>Section 31.13</A
>).
  </P
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN82346"
></A
><H2
>Diagnostics</H2
><P
>   In case of difficulty, see <A
HREF="sql-reindex.html"
>REINDEX</A
>
   and <A
HREF="app-psql.html"
><SPAN
CLASS="APPLICATION"
>psql</SPAN
></A
> for
   discussions of potential problems and error messages.
   The database server must be running at the
   targeted host.  Also, any default connection settings and environment
   variables used by the <SPAN
CLASS="APPLICATION"
>libpq</SPAN
> front-end
   library will apply.
  </P
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN82352"
></A
><H2
>Notes</H2
><P
>   <SPAN
CLASS="APPLICATION"
>reindexdb</SPAN
> might need to connect several
   times to the <SPAN
CLASS="PRODUCTNAME"
>PostgreSQL</SPAN
> server, asking
   for a password each time. It is convenient to have a
   <TT
CLASS="FILENAME"
>~/.pgpass</TT
> file in such cases. See <A
HREF="libpq-pgpass.html"
>Section 31.14</A
> for more information.
  </P
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN82359"
></A
><H2
>Examples</H2
><P
>    To reindex the database <TT
CLASS="LITERAL"
>test</TT
>:
</P><PRE
CLASS="SCREEN"
><SAMP
CLASS="PROMPT"
>$ </SAMP
><KBD
CLASS="USERINPUT"
>reindexdb test</KBD
></PRE
><P>
   </P
><P
>    To reindex the table <TT
CLASS="LITERAL"
>foo</TT
> and the index
    <TT
CLASS="LITERAL"
>bar</TT
> in a database named <TT
CLASS="LITERAL"
>abcd</TT
>:
</P><PRE
CLASS="SCREEN"
><SAMP
CLASS="PROMPT"
>$ </SAMP
><KBD
CLASS="USERINPUT"
>reindexdb --table foo --index bar abcd</KBD
></PRE
><P></P
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN82373"
></A
><H2
>See Also</H2
><A
HREF="sql-reindex.html"
>REINDEX</A
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
SUMMARY="Footer navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="app-psql.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
ACCESSKEY="H"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="app-vacuumdb.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><SPAN
CLASS="APPLICATION"
>psql</SPAN
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="reference-client.html"
ACCESSKEY="U"
>Up</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><SPAN
CLASS="APPLICATION"
>vacuumdb</SPAN
></TD
></TR
></TABLE
></DIV
></BODY
></HTML
>